//package tpo.wmb.provider.controller;
//
//import api.order.OrderApi;
//import com.github.pagehelper.PageHelper;
//import com.github.pagehelper.PageInfo;
//import dto.Dto;
//import org.springframework.data.redis.core.RedisTemplate;
//import org.springframework.web.bind.annotation.RestController;
//import pojo.BuyOrder;
//import tpo.wmb.provider.service.OrderService;
//
//import javax.annotation.Resource;
//import java.util.List;
//import java.util.Map;
//import java.util.concurrent.TimeUnit;
//
//@RestController
//public class OrderController废弃 implements OrderApi {
//    @Resource
//    OrderService orderService;
//
//    @Resource
//    private RedisTemplate<String,Object> redisTemplate;
//
//
//    //redis储存条件分页查询,每次改变了条件需要重查,无法判断什么时候需要重查,取消使用!!!!
//    @Override
//    public Dto<PageInfo<BuyOrder>> selectOrderList(Map<String, Object> map) {
//
//        //看看map中的条件是否改变,是否需要重新从数据库获取数据////////////////////////////////
//        Map<String,Object> map0= (Map<String, Object>) redisTemplate.opsForValue().get("map");
//        boolean state=false;
//        if(map0==null) {//初始化分页条件查询时
//            redisTemplate.opsForValue().set("map", map);//放入redis
//            state=true;
//        }else {
//
//        }
//
//        /////////////////////////////////////////////////////////////////////////
//        int pageNum = Integer.parseInt(map.get("pageNum").toString());//获得当前页码
//        int pageSize = Integer.parseInt(map.get("pageSize").toString());//获得页面大小
//        System.out.println("=======================" + pageNum);
//        System.out.println("=======================" + pageSize);
//
//
//        //先去快速缓存拿取,如果不存在,才去数据库查询
//        List<BuyOrder> list = (List<BuyOrder>) redisTemplate.opsForValue().get("BuyOrderList");
//        if (list == null || state) {
//            System.out.println("==========================缓存失效,查询数据");
//            PageHelper.startPage(pageNum, pageSize);//开始分页,设参数
//            list = orderService.selectOrderList(map);//缓存没有,就查询数据并且更新缓存
//            redisTemplate.opsForValue().set("BuyOrderList", list);
//        }
//        PageInfo<BuyOrder> pageInfo = new PageInfo<>(list);//数据放入自动参数分页
//
//        Dto<PageInfo<BuyOrder>> dto = new Dto<PageInfo<BuyOrder>>();//DTO数据传输对象
//        dto.setObj(pageInfo);
//        dto.setMsg("OK");
//        dto.setCode(200);
//        dto.setSuccess(true);
//
//        return dto;
//    }
//
//    @Override
//    public Dto<BuyOrder> selectOrder(Integer id) {
//        //先去快速缓存拿取,如果不存在,才去数据库查询
//        BuyOrder buyOrder = (BuyOrder) redisTemplate.opsForValue().get("BuyOrder"+id);
//        if(buyOrder == null){
//            buyOrder=orderService.selectOrder(id);
//            redisTemplate.opsForValue().set("BuyOrder"+id,buyOrder);
//        }
//        Dto<BuyOrder> dto = new Dto<BuyOrder>();//DTO数据传输对象
//        dto.setObj(buyOrder);
//        dto.setMsg("OK");
//        dto.setCode(200);
//        dto.setSuccess(true);
//
//        return dto;
//    }
//
//    @Override
//    public Integer updateOrder(BuyOrder buyOrder) {
//        redisTemplate.opsForValue().set("BuyOrder"+buyOrder.getId(),null);
//        redisTemplate.opsForValue().set("BuyOrderList",null);
//        return orderService.updateOrder(buyOrder);
//    }
//
//    @Override
//    public Integer insertOrder(BuyOrder buyOrder) {
//        redisTemplate.opsForValue().set("BuyOrderList",null);
//        return orderService.insertOrder(buyOrder);
//    }
//
//    @Override
//    public Integer deleteOrder(Integer id) {
//        redisTemplate.opsForValue().set("BuyOrder"+id,null);
//        redisTemplate.opsForValue().set("BuyOrderList",null);
//        return orderService.deleteOrder(id);
//    }
//
//
//
//
//
//}
